<?php
/*
 * [JINYUN!] (C)2001-2099 Jinyunweb.com
 * This is NOT a freeware, use is subject to license terms
 * $Id: 2017-12-13 03:39:35 apple $
*/
defined('BY_JYA') or exit('error');
$_RQ['op']=$_RQ['op']?$_RQ['op']:'list';
$return=array();
$tabs=array(
	array('op'=>'list','title'=>'微信公众号'),
	array('op'=>'edit','title'=>'添加微信公众号'),
);
$tip='[操作教程]</br>1、添加微信公众号后，复制【接入地址】--微信公众号管理后台，进入 开发-基本配置 菜单，绑定公众号！';
if($_RQ['op']=='list'){
	//搜索
	$params=array('uniacid'=>$_SESSION['uniacid']);
	if($_RQ['title']){
		$params['title like']='%'.$_RQ['title'].'%';
		$return['params']['title']=$_RQ['title'];
	}
	$pindex = max(1, intval($_RQ['page']));
	$psize = 15;
	$total='';
	$list=pdo_getslice('jy_apioauth_wechat',$params,array($pindex,$psize),$total,$fields);
	foreach($list as &$item){
		$item['url']=SITEROOT.'addons/jy_apioauth/api.php?id='.$item['id'];
	}
	$return['list']=$list?$list:array();
	$totalpage=ceil($total/$psize);
	$totalpage=intval($totalpage);
	$return['totalpage'] =$totalpage;
	$return['params']['page'] =$pindex;
	$htmls=array(
		'type'=>'list',
		'tabs'=>$tabs,
		'list'=>array('data'=>'list','tip'=>$tip,'list'=>array(
			array('name'=>'title','title'=>'公众号名称','type'=>'string'),
			array('name'=>'url','title'=>'接入地址','type'=>'copy'),
			array('name'=>'status','title'=>'状态','type'=>'switch','set'=>'set'),
		)),
		'search_one'=>array('name'=>'title'),
	);
	$return['htmls']=$htmls;
	exi($return);
}
if($_RQ['op']=='edit'){
	$id=intval($_RQ['id']);
	if($id){
		$item=pdo_get('jy_apioauth_wechat',array('uniacid'=>$_SESSION['uniacid'],'id'=>$id));
		$item['url']=SITEROOT.'addons/jy_apioauth/api.php?id='.$item['id'];
	}else{
		$item=array();
		$item['url']='提交保存后会生成接口地址';
	}
	$return['account']=pdo_get('core_accounts',array('uniacid'=>$_SESSION['uniacid']),array('token','aeskey'));
	$item['token']=$return['account']['token'];
	$item['aeskey']=$return['account']['aeskey'];
	$item['wechats']=json_decode($item['wechats'],true);
	$return['item']=$item;
	$htmls=array(
		'type'=>'edit',
		'post'=>'post',
		'desc'=>'公众号设置',
		'tabs'=>$tabs,
		'edit'=>array(
			array('type'=>'string','title'=>'公众号名称','name'=>'title', 'help'=>'' ,'must'=>true),
			array('type'=>'string','title'=>'AppID','name'=>'appid','help'=>'填写公众号开发者AppID。登陆微信公众平台——开发——基本配置——开发者ID'),
			array('type'=>'string','title'=>'AppSecre','name'=>'appsecret','help'=>'填写公众号开发者AppSecret。登陆微信公众平台——开发——基本配置——开发者密钥'),
			array('type'=>'string','title'=>'原始ID','name'=>'oldid', 'help'=>'填写公众号原始ID。登陆微信公众平台——设置——公众号设置——帐号详情——原始ID'),
			array('type'=>'array','name'=>'wechats','title'=>'子平台','add_tip'=>'添加一个子平台',
					'list'=>array(
							array('type'=>'string','title'=>'接入地址','name'=>'url',),
							array('type'=>'string','title'=>'优先级','name'=>'paixu',),							
					),
					'details'=>array(
							array('type'=>'string','title'=>'接入地址','name'=>'url',),
							array('type'=>'string','title'=>'优先级','name'=>'paixu',),	
					)
			),
			array('type'=>'tip','title'=>'公众号绑定方法（授权模式添加公众号请忽略此步骤）：根据提示填写上述参数之后，将以下三项参数填至微信公众平台——开发——基本配置——服务器配置，启用，提交即可。'),
			array('type'=>'tip','title'=>'<red>[token验证失败?]:如果是https的：微信目前HTTPS他是有安全门槛的，达不到ATS安全标准证书或SSL证书安装不规范，就算安装了HTTPS也是不会通过微信认证；如果是其他原因，可以百度搜索一下自行排查。</red>' ),
			array('type'=>'copy','title'=>'接入地址','name'=>'url'),
			array('type'=>'copy','title'=>'令牌（Token）','name'=>'token','help'=>'' ),
			array('type'=>'copy','title'=>'消息加解密密钥(EncodingAESKey)','name'=>'aeskey','help'=>''),
			array('name'=>'status','title'=>'状态','type'=>'switch'),
		)
	);
	$return['htmls']=$htmls;
	exi($return);
}

if($_RQ['op']=='del'){
	//删除
	$dels=array();
	if($_RQ['id']){
		$dels[]=intval($_RQ['id']);
	}
	if($_RQ['del']){
		$del=trim($_RQ['del'],';');
		$del=explode(';',$del);
		foreach($del as $id){
			$dels[]=intval($id);
		}
	}
	if($dels){
		foreach($dels as $id){
			if($id){
				pdo_delete('jy_apioauth_wechat',array('id'=>$id,'uniacid'=>$_SESSION['uniacid']));
			}
		}
	}
	exi('删除成功！');
}

if($_RQ['op']=='post'){
	$postdata=get_postdata();
	if(!$postdata['appid'] || !$postdata['appsecret']){
		exi('必须填写appid和appsecret！','error');
	}
	$data=array(
			'title'=>trim($postdata['title']),
			'status'=>intval($postdata['status']),
			'appid'=>trim($postdata['appid']),
			'appsecret'=>trim($postdata['appsecret']),
			'oldid'=>trim($postdata['oldid']),
			'token'=>trim($postdata['token']),
			'aeskey'=>trim($postdata['aeskey']),
			'wechats'=>ijson_encode($postdata['wechats'])
	);
	$id=intval($postdata['id']);
	if($id){
		pdo_update('jy_apioauth_wechat',$data,array('uniacid'=>$_SESSION['uniacid'],'id'=>$id));
		exi('修改成功！','','list');
	}else{
		$data['uniacid']=$_SESSION['uniacid'];
		$data['createtime']=TIMESTAMP;
		pdo_insert('jy_apioauth_wechat',$data);
		exi('增加成功！','','list');
	}
}
if($_RQ['op']=='set'){
	$id=intval($_RQ['id']);
	if(!$id){
		exi('参数错误！','error');
	}
	$update=array();
	$post=get_postdata();
	if(isset($post['status'])){
		$update['status']=intval($post['status']);
	}
	if($update){
		pdo_update('jy_apioauth_wechat',$update,array('id'=>$id,'uniacid'=>$_SESSION['uniacid']));
	}
	exi('操作成功！');
}
if($_RQ['op']=='help'){
	$return['item']['image1']='../core/resource/images/help-sys-web.jpg';
	$return['htmls']=array(
			'type'=>'look',
			'desc'=>'独立域名解释',
			'look'=>array(
				array('type'=>'tip','title'=>'【温馨提示】：这个独立域名绑定的是个人站点的官网（手机/PC），非本程序平台网站。个人域名为空，则使用系统域名，填写域名后，需要将本域名解析到{{pagedata.ip ||"xxx.xxx.xxx.xxx"}}，然后联系系统管理员协助处理方能生效。'),
				array('type'=>'help','title'=>'一、什么叫个人站点的官网：','help'=>'
					1、比如我在某建站运营商平台的注册了一个用户账号；</br>
					2、我登录上面“建站运营商平台”后台，进入站点管理系统，搭建了一个站点的官网--苹果网；</br>
					3、然后在这个站点管理系统，我添加一些内容（比如：新闻，网站名称，商城等），来丰富我的《苹果网》；</br>
					4、最后，我绑定一个独立域名，这个独立域名解析指向的就是《苹果网》；</br>
					5、我只需分享这个绑定的域名给我的客户，客户就能直接访问我的《苹果网》。</br>
					6、你绑定的独立域名，是面向访问《苹果网》的，只有《苹果网》注册的用户（比如：微信粉丝）才能正常登录。</br>
					7、【注意】：这个独立域名，是不能用做：《建站运营商平台》的注册的账号来登录的，否则肯定找不到用户。</br>
				'),
				array('type'=>'help','title'=>'二、什么叫本程序平台：','help'=>'
					1、本程序平台，其实就是上面这个“建站运营商平台”；</br>
					2、您在本程序平台，注册一个账号，就等于拥有一个《网站》；</br>
					3、如果你要登录您上面注册的账号，管理你的《苹果网》，你只能用我们平台的域名登录才行；</br>
				'),
				array('type'=>'help','title'=>'三、如果这个域名我只想访问平台，不想访问个人站点：','help'=>'
					1、很简单，只要不添加独立域名就行！（不添加独立域名的，默认访问的是平台，一旦添加了独立域名，访问的就是站点）；</br>
				'),
				array('type'=>'help','title'=>'四、平台-站点关系图如下：','help'=>'
				'),
				array('type'=>'image','title'=>'','name'=>'image1')
			),
	);
	exi($return);
}